home *** CD-ROM | disk | FTP | other *** search
-
-
-
- - 1 -
-
-
-
- 3. _K_n_o_w_n__P_r_o_b_l_e_m_s__a_n_d__W_o_r_k_a_r_o_u_n_d_s
-
- _M_a_x_i_m_u_m _I_m_a_g_e _S_i_z_e
-
- +o The maximum image size that OCTANE Compression or
- IMPACT Compression can compression or decompression in
- hardware is 4080 pixels wide by 4088 lines high.
-
- +o The maximum image size the scaler & color space
- converter hardware is capable of processing during
- decompression to memory or uncompressed data capture is
- 1024 pixels wide by 1000 lines high. Image sizes
- larger than this maximum are scaled and/or color space
- converted using software on the host CPU.
-
- _V_i_d_e_o _C_o_n_t_r_o_l _P_a_n_e_l
-
- +o In configurations without OCTANE Digital Video or
- IMPACT Video, the "Live Video Output" utility will
- fail. Without OCTANE Digital Video or IMPACT Video,
- OCTANE Compression and IMPACT Compression has no direct
- connection to the graphics subsystem, and cannot
- perform this operation.
-
- _C_o_m_p_r_e_s_s_i_o_n _L_i_b_r_a_r_y _I_n_t_e_r_l_e_a_v_e
-
- +o When using the interleave functionality of the
- compression library (CL_IMPACT_FRAME_INTERLEAVE is
- TRUE), the size of the uncompressed (Frame) ring buffer
- must be a multiple of the uncompressed, _i_n_t_e_r_l_e_a_v_e_d
- image size.
-
- _Y_C_r_C_b _t_o _R_G_B, _R_G_B _t_o _Y_C_r_C_b _c_o_l_o_r _c_o_n_v_e_r_s_i_o_n _i_s _n_o_t
- _s_y_m_m_e_t_r_i_c_a_l
-
- +o There is a difference between the two pieces of
- hardware that perform color space conversion on the
- OCTANE Compression or IMPACT Compression option. The
- YCrCb to RGB conversion (decompression/capture) uses
- one color co-siteing arrangement, while the RGB to
- YCrCb conversion (compression/playback) uses another.
- This will manifest itself as the color components of
- the digital video "moving" to the right in reference to
- the luminance when compressed/decompressed multiple
- times (where the uncompressed format in memory is
- RGBX).
-
- Workaround
-
- +o For each round-trip (compressed to decompressed to
- compressed), the color components will move one half
-
-
-
-
-
-
-
-
-
-
-
- - 2 -
-
-
-
- pixel to the right. For most applications this shift
- will be acceptable (undetectable).
-
- +o Where possible, use the YCrCb color space for
- uncompressed images in memory. Use software color
- space conversion (on the host CPU) if high
- quality/multiple generation compositing is to be
- performed.
-
- _O_u_t _o_f _R_a_n_g_e _C_o_l_o_r_s _R_e_v_e_r_s_e_d _d_u_r_i_n_g _Y_C_r_C_b _t_o _R_G_B _c_o_n_v_e_r_s_i_o_n
-
- +o During YCrCb to RGB color space conversion (optionally
- specified during uncompressed video capture or memory
- to memory decompression), out of range values may wrap.
- This will manifest itself through the appearance of
- incorrect color values in the captured data.
-
- Workaround
-
- +o If the operation is uncompressed video capture, verify
- that the brightness control (available on the pro panel
- of vcp) for the input is set to the default factory
- setting. Varying the brightness value may have an
- effect on the degree of failure.
-
- +o To avoid the problem completely, the application can
- capture the data to memory in the YCrCb colorspace and
- convert to RGB on the host CPU.
-
- _H_a_r_d_w_a_r_e _I_n_i_t_i_a_l_i_z_a_t_i_o_n _o_n _F_i_r_s_t _U_s_e
-
- +o The first use of any portion of the OCTANE Compression
- or IMPACT Compression board will trigger the
- initialization of the hardware. This initialization
- requires the down-load and startup of microcode, and
- may take up to thirty (30) seconds to complete.
-
- The requested processing will begin as soon as the
- initialization of the hardware has completed.
-
- Workaround
-
- +o The system administrator may configure the system to
- start the video daemon automatically upon system boot.
- This will have the effect of performing an operation on
- OCTANE Compression or IMPACT Compression, and the
- hardware will be initialized.
-
- Use the command "chkconfig videod on" to effect this
- change.
-
-
-
-
-
-
-
-
-
-
-
-
- - 3 -
-
-
-
- _A_n_a_l_o_g _V_i_d_e_o _I_n_p_u_t _c_o_n_s_i_d_e_r_a_t_i_o_n_s _w_i_t_h _O_C_T_A_N_E _D_i_g_i_t_a_l _V_i_d_e_o
- _o_r _I_M_P_A_C_T _V_i_d_e_o
-
- +o To fully utilize the functionality of OCTANE Digital
- Video or IMPACT Video with the analog video source of
- OCTAME Compression or IMPACT Compression, all inputs to
- both OCTANE Digital Video/IMPACT Video and OCTANE
- Compressoin/IMPACT Compression must be locked together,
- and the Input Autophaser should have the value
- "normal".
-
- _c_l_G_e_t_N_e_x_t_I_m_a_g_e_I_n_f_o() _S_t_a_t_u_s _I_n_f_o_r_m_a_t_i_o_n
-
- +o The information returned in the _s_t_a_t_u_s element of the
- CLimageInfo structure returned by the
- clGetNextImageInfo() call is incorrect. At present,
- the status tracks the imagecount field, and does not
- derive the odd/even attributes from the video input.
-
- This bug will be addressed in a future software
- release.
-
- _C_o_m_p_r_e_s_s_e_d, _V_e_r_t_i_c_a_l_l_y _D_e_c_i_m_a_t_e_d _I_m_a_g_e_s
-
- +o Images captured using the one half vertical decimation
- mode (for example, using the halfy option of dmrecord)
- may be of poor quality. The algorithm for reducing the
- number of lines of video data is straight decimation,
- and operates in such a way that when fields are viewed
- as a frame, pairs of adjacent lines have been
- discarded.
-
- Generally, better image quality will result through the
- use of lower JPEG quality factor values than will be
- seen by using either the one half vertical or one half
- horizontal decimation modes.
-
- _T_r_i_g_g_e_r _i_s _N_o_t _S_u_p_p_o_r_t_e_d
-
- +o The trigger functionality of the OCTANE Compression and
- IMPACT Compression is not supported in this release.
-
- This deficiency will be addressed in a future software
- release.
-
- _S_q_u_a_r_e _P_i_x_e_l _V_i_d_e_o _F_o_r_m_a_t _C_o_n_s_i_d_e_r_a_t_i_o_n_s
-
- +o Square pixel NTSC & PAL video formats are not supported
- timings in the 601 specification. As such, it is
- improper to generate these timings on an OCTANE
- Compression or IMPACT Compression and send them out the
-
-
-
-
-
-
-
-
-
-
-
- - 4 -
-
-
-
- digital ports of OCTANE Digital Video or IMPACT Video.
-
- +o The square pixel timings are not native timing formats
- of either OCTANE Digital Video or IMPACT Video, and may
- cause unexpected results.
-
- _F_a_i_l_u_r_e _t_o _C_o_m_p_i_l_e _E_x_a_m_p_l_e _C_o_d_e
-
- +o In order to compile the example code provided, the IRIS
- Developer's Option, Digital Media Development
- Environment, 6.5 (dmedia_dev), needs to have been
- installed on the system.
-
- _C_a_p_t_u_r_e _T_o_o_l _C_o_n_s_i_d_e_r_a_t_i_o_n_s
-
- +o When running on a system that does not have either
- OCTANE Digital Video or IMPACT Video installed, the
- capture tool will utilize both channels of the OCTANE
- Compression or IMPACT Compression board.
-
- This is a limitation of the capture application.
-
- +o The Compression selection on the "Settings ..." dialog
- of Capture will reset to "SGI Movie 2 [MVC2]" each time
- the settings dialog is opened.
-
- _D_m_p_l_a_y _T_o_o_l _C_o_n_s_i_d_e_r_a_t_i_o_n_s
-
- +o When used with either an OCTANE Digital Video or IMPACT
- Video board, the dmplay tool may not place the video
- output window appropriately on the graphics monitor,
- and if there are other video applications running,
- conflict with those applications.
-
- _V_i_d_e_o _a_n_d _C_o_m_p_r_e_s_s_i_o_n _S_i_z_e _R_e_q_u_i_r_e_m_e_n_t_s
-
- +o When programming OCTANE Compression or IMPACT
- Compression for capture or playback of compressed data
- from/to video, be sure that the uncompressed size of
- the image (CL_IMAGE_WIDTH and CL_IMAGE_HEIGHT) match
- the size set on the VL_CODEC node for the VL_SIZE
- parameter.
-
- If the sizes are not the same, unexpected results (such
- as channel hangs) may occur.
-
- _c_l_C_o_m_p_r_e_s_s_I_m_a_g_e
-
- +o The Compression Library call _c_l_C_o_m_p_r_e_s_s_I_m_a_g_e() is not
- supported on OCTANE Compression or IMPACT Compression.
- The issue is that there is no way to specify to the
-
-
-
-
-
-
-
-
-
-
-
- - 5 -
-
-
-
- underlying routines the size of the compressed data
- buffer.
-
- _A_s_y_n_c_h_r_o_n_o_u_s _S_t_o_p _C_o_n_s_i_d_e_r_a_t_i_o_n_s
-
- +o When an application sets the CL_IMPACT_CODEC_CONTROL
- parameter with the value CL_IMPACT_STOP, the
- application is required to close and re-open the codec
- if it wishes to perform compression or decompression
- operations again.
-
- _C_o_m_p_r_e_s_s_i_o_n _L_i_b_r_a_r_y _B_u_f_f_e_r _C_o_n_s_i_d_e_r_a_t_i_o_n_s
-
- +o Applications should use the _c_l_C_r_e_a_t_e_B_u_f() routine to
- create buffers for use with OCTANE Compression or
- IMPACT Compression. This routine ensures that the data
- buffer is page aligned, and is padded to at least a
- cache line boundary at the end to ensure that no cache
- lines are shared.
-
- If an application must use buffers that are not
- allocated using clCreateBuf(), they should make every
- attempt to ensure that the start of the data is page
- aligned and is a multiple of 512 bytes in length.
- Applications may use _m_e_m_a_l_i_g_n( _1_6_3_8_4, _s_i_z_e ) to
- allocate page aligned buffers.
-
- If an application is not able to use clCreateBuf(),
- unexpected results (channel hangs or corrupted data)
- may occur if a cache line is shared between the data
- buffer and some other variable.
-
- _L_o_w _D_a_t_a _C_o_m_p_r_e_s_s_i_o_n _R_a_t_i_o _C_o_n_s_i_d_e_r_a_t_i_o_n_s
-
- +o As the compression ratio decreases, the bandwidth to
- the ultimate target device increases. Most disks
- standard on the Indigo2 platform are able to handle a
- 7:1 compressed data stream to disk using the dmrecord &
- dmplay applets.
-
- For lower compression ratios, it is necessary to move
- to striped xlv volumes. Striped xlv volumes enables
- higher bandwidth by fanning the data flow to different
- disks concurrently. For higher bandwidths, balance the
- disks between the internal and external SCSI busses of
- the Indigo2 system.
-
- An example system that was using during IMPACT
- Compression development was a 250MHz R4400 processor
- with 128MB RAM and two Quantum XP32150 2GB drives. One
- drive was installed internally, the other externally.
-
-
-
-
-
-
-
-
-
-
-
- - 6 -
-
-
-
- By setting up a single striped xlv volume on these two
- disks, dmrecord and dmplay were able to sustain 4:1
- compressed video with 48KHz audio to disk.
-
- To achieve 2:1 compressed data streams to disk, at
- least one additional hard disk is required, and a
- change in the programming model used to get the data to
- disk. See the applets _c_o_m_p_t_o_d_s_k and _d_s_k_t_o_d_e_c_o_m_p in
- /usr/people/4Dgifts/examples/dmedia/compression/impact/comptodsk
- for an example of how to get 2:1 compressed data to
- disk.
-
- _B_i_t_r_a_t_e _a_n_d _A_c_h_i_e_v_e_d _C_o_m_p_r_e_s_s_i_o_n _R_a_t_i_o
-
- +o In some cases of very low compression ratios (4:1 and
- less), developers my notice that the actual achieved
- compression ratio may be less than the target they had
- provided. This can occur when the data is easily
- processed by the JPEG algorithm, and the co-efficient
- scale values are all 1's.
-
- Essentially the Discrete Cosine Transform step of the
- JPEG algorithm didn't find much high frequency
- transitions to encode.
-
- This effect is easily seen by compressing a single
- color image with high bitrate values.
-
- _C_L__B_I_T_R_A_T_E _a_n_d _C_L__J_P_E_G__Q_U_A_L_I_T_Y__F_A_C_T_O_R _I_n_t_e_r_a_c_t_i_o_n
-
- +o When both CL_BITRATE and CL_JPEG_QUALITY_FACTOR are
- provided to the compression library, the quantization
- tables of the first compressed image are based on
- CL_JPEG_QUALITY_FACTOR.
-
- For all subsequent images, the quantization tables will
- be based upon the value of CL_BITRATE.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-